package visiopuce.DAO;

import java.math.BigDecimal;
import java.util.List;

import org.hibernate.Query;

import visiopuce.HibernateUtil;
import visiopuce.objets.Cotation;
import visiopuce.objets.Historique;

public class HistoriqueDAOImpl extends GenericDAOImpl<Historique, BigDecimal>
		implements HistoriqueDAO {

	
	/** Constructeur priv� */
	private HistoriqueDAOImpl() {
	}

	/** Instance unique non pr�initialis�e */
	private static HistoriqueDAOImpl INSTANCE = null;

	/** Point d'acc�s pour l'instance unique du singleton */
	public static HistoriqueDAO getInstance() {
		if (INSTANCE == null) {
			INSTANCE = new HistoriqueDAOImpl();
		}
		return INSTANCE;
	}

	@Override
	public List<Historique> getSuppChampObj() {
		List<Historique> histo = null;
		String sql = "SELECT h FROM Historique h WHERE h.requete like :req";
		Query query = HibernateUtil.getSession().createQuery(sql).setParameter("req", "Suppression des champs de l'objetPrel%");
		histo = findMany(query);
		return histo;
	}

	@Override
	public List<Historique> getHistoInsert(Integer idPrelevement) {
		List<Historique> histo = null;
		String sql = "SELECT h FROM Historique h WHERE h.requete like :req order by h.date DESC";
		Query query = HibernateUtil.getSession().createQuery(sql).setParameter("req", "%idObjet=Prel-"+idPrelevement+"]");
		histo = findMany(query);
		return histo;
	}
	
	

}